﻿using System;
using System.Collections.Generic;
using System.Text;
using System.Data;
namespace Pixysoft.Framework.Noebe
{
    public interface IEntityNoebeCommand : IEntityQuerion, IEntitySession, IDisposable
    {
        bool IsOpen { get;}

        INoebeCommand Command { get;}

        string SQL { get;set;}

        void Begin();

        void Begin(IsolationLevel level);

        void Begin(NoebeTransactionArea transactionArea);

        void Begin(IsolationLevel level, NoebeTransactionArea transactionArea);

        NoebeParameterCollection Parameters { get;}

        List<T> ExecuteReader<T>();

        int Execute();

        void Commit();

        void Rollback();
    }
}
